A filtering circuit 100 illustrated in FIG. 18 is an example of a hardware configuration by which a filtering process for noise reduction is performed. As depicted in FIG. 18, the filtering circuit 100 has a hardware configuration for a 3×3 spatial filter. The 3×3 spatial filter includes pixel data for 3 pixels in a horizontal direction and 3 pixels in a vertical direction. The pixel data in the vertical direction is referenced by the hardware configuration when the filtering process of the 3×3 spatial filter is used with the hardware configuration. For this reason, the hardware configuration requires a memory 101 and a flip-flop 102 for storing the pixel data equivalent to 2 lines.
An image retrieved by an image pick-up element may contain a low-frequency noise with a low frequency spatial distribution. One an example of a low-frequency noise includes a stripe-like noise ranging over a wide range equal to or greater than 5 pixels. Since the low-frequency noise has a characteristic of low frequency and spans a wide range, it is difficult to remove such noise by known spatial filters, such as, 3×3 pixels or 5×5 pixels. Conversely, if a large-scale spatial filter, such as, 21×21 pixels were to be used for removal of the noise spanning the wide range, such large-scale spatial filters require a larger circuit-scale for a memory, storing pixel data in the vertical direction, and a filter operation unit or the like, and thus have also been problematic.